package cn.fintecher.pangolin.entity.mysql;

import cn.fintecher.pangolin.common.enums.BaseSelect;
import cn.fintecher.pangolin.common.enums.ExportState;
import cn.fintecher.pangolin.common.enums.PayCheckStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.Table;
import java.util.Date;

/**
 * @Author wangxiangdong
 * @Description 还款核查
 * @Date 2019/11/19 10:12
 **/

@Data
@Entity
@Table(name = "payment_check")
@ApiModel(value = "payment_check", description = "还款核查信息")
public class PaymentCheck extends  BaseEntity{

    @ApiModelProperty("案件ID")
    private String caseId;

    @ApiModelProperty(notes = "批次号")
    private String batchNumber;

    @ApiModelProperty(value = "案件编号")
    private String caseNumber;

    @ApiModelProperty(notes = "承诺还款金额")
    private Double promiseAmt;

    @ApiModelProperty(notes = "客户姓名")
    private String personalName;

    @ApiModelProperty(notes = "委托方id标")
    private String principalId;

    @ApiModelProperty(notes = "委托方")
    private String principalName;

    @ApiModelProperty(notes = "身份证号")
    private String certificateNo;

    @ApiModelProperty(notes = "承诺还款日期")
    private Date promiseDate;

    @ApiModelProperty(notes = "已还款金额")
    private Double hasPaymentAmt;

    @ApiModelProperty(notes = "已还款日期")
    private Date hasPaymentDate;

    @ApiModelProperty("ptp or cp")
    @Enumerated(EnumType.STRING)
    private PayCheckStatus payCheckStatus;

    @ApiModelProperty("导出状态")
    @Enumerated(EnumType.STRING)
    private ExportState exportState = ExportState.WAIT_EXPORT;

    @ApiModelProperty("是否跳票")
    @Enumerated(EnumType.STRING)
    private BaseSelect isBouncedCheck = BaseSelect.NO;

    @ApiModelProperty("是否回复")
    @Enumerated(EnumType.STRING)
    private BaseSelect isReply = BaseSelect.NO;

    @ApiModelProperty("申请人")
    private String applyName;

    @ApiModelProperty("申请人Id")
    private String applyId;

    @ApiModelProperty("申请原因")
    private  String reason;

    @ApiModelProperty("申请日期")
    private Date applyDate;

    @ApiModelProperty("回复人")
    private String replyName;

    @ApiModelProperty("回复时间")
    private Date replyDate;

    @ApiModelProperty("回复意见")
    private String remark;

    @ApiModelProperty("操作人")
    private String operator;

    @ApiModelProperty("操作时间")
    private Date operatorDate;
}
